
<?php

include('include/connexionBdd.php');


//permet de traiter le retour ipn de paypal
$email_account = "merkurocrewlongboard@gmail.com";
$req = 'cmd=_notify-validate';

foreach ($_POST as $key => $value) {
    $value = urlencode(stripslashes($value));
    $req .= "&$key=$value";
}

$header = "POST /cgi-bin/webscr HTTP/1.0\r\n";
$header .= "Host: www.paypal.com\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen('ssl://www.paypal.com', 443, $errno, $errstr, 30);

$item_name1 = $_POST['item_name1'];
$item_name2 = $_POST['item_name2'];
$item_name3 = $_POST['item_name3'];
$item_name4 = $_POST['item_name4'];
$item_name5 = $_POST['item_name5'];
$item_number1 = $_POST['item_number1'];
$item_number2 = $_POST['item_number2'];
$item_number3 = $_POST['item_number3'];
$item_number4 = $_POST['item_number4'];
$item_number5 = $_POST['item_number5'];
$payment_status = $_POST['payment_status'];
$payment_amount1 = $_POST['mc_gross1'];
$payment_amount2 = $_POST['mc_gross2'];
$payment_amount3 = $_POST['mc_gross3'];
$payment_amount4 = $_POST['mc_gross4'];
$payment_amount5 = $_POST['mc_gross5'];
$payment_currency = $_POST['mc_currency'];
$quantity1 = $_POST['quantity1'];
$quantity2 = $_POST['quantity2'];
$quantity3 = $_POST['quantity3'];
$quantity4 = $_POST['quantity4'];
$quantity5 = $_POST['quantity5'];
$txn_id = $_POST['txn_id'];
$receiver_email = $_POST['receiver_email'];
$payer_email = $_POST['payer_email'];
//parse_str($_POST['custom']);
$ids = explode('|', $_POST['custom']);
$id_user = $ids[0];
$email_user = $ids[1];
$petit_dejeune = 0;
$dejeune = 0;
$repas_soirSamedi = 0;
$repas_soirDimanche = 0;

if (!$fp) {
    
} else {
    fputs($fp, $header . $req);
    while (!feof($fp)) {
        $res = fgets($fp, 1024);
        if (strcmp($res, "VERIFIED") == 0) {
            // vérifier que payment_status a la valeur Completed
            if ($payment_status == "Completed") {
                if ($email_account == $receiver_email) {

                    if (isset($item_number1)) {
                        if ($item_number1 == 1) {
                            $id_compet = 1;
                        } else if ($item_number1 == 2) {
                            $id_compet = 2;
                        } else if ($item_number1 == 3) {
                            $id_compet = 3;
                        } else if ($item_number1 == 4) {
                            $petit_dejeune = $quantity1;
                        } else if ($item_number1 == 5) {
                            $dejeune = $quantity1;
                        } else if ($item_number1 == 6) {
                            $repas_soirSamedi = $quantity1;
                        } else if ($item_number1 == 7) {
                            $repas_soirDimanche = $quantity1;
                        } else if ($item_number1 == 8) {
                            $totalMarchaux = 1;
                        }
                    }
                    if (isset($item_number2)) {
                        if ($item_number2 == 1) {
                            $id_compet = 1;
                        } else if ($item_number2 == 2) {
                            $id_compet = 2;
                        } else if ($item_number2 == 3) {
                            $id_compet = 3;
                        } else if ($item_number2 == 4) {
                            $petit_dejeune = $quantity2;
                        } else if ($item_number2 == 5) {
                            $dejeune = $quantity2;
                        } else if ($item_number2 == 6) {
                            $repas_soirSamedi = $quantity2;
                        } else if ($item_number2 == 7) {
                            $repas_soirDimanche = $quantity2;
                        } else if ($item_number2 == 8) {
                            $totalMarchaux = 1;
                        }
                    }
                    if (isset($item_number3)) {
                        if ($item_number3 == 1) {
                            $id_compet = 1;
                        } else if ($item_number3 == 2) {
                            $id_compet = 2;
                        } else if ($item_number3 == 3) {
                            $id_compet = 3;
                        } else if ($item_number3 == 4) {
                            $petit_dejeune = $quantity3;
                        } else if ($item_number3 == 5) {
                            $dejeune = $quantity3;
                        } else if ($item_number3 == 6) {
                            $repas_soirSamedi = $quantity3;
                        } else if ($item_number3 == 7) {
                            $repas_soirDimanche = $quantity3;
                        } else if ($item_number3 == 8) {
                            $totalMarchaux = 1;
                        }
                    }
                    if (isset($item_number4)) {
                        if ($item_number4 == 1) {
                            $id_compet = 1;
                        } else if ($item_number4 == 2) {
                            $id_compet = 2;
                        } else if ($item_number4 == 3) {
                            $id_compet = 3;
                        } else if ($item_number4 == 4) {
                            $petit_dejeune = $quantity4;
                        } else if ($item_number4 == 5) {
                            $dejeune = $quantity4;
                        } else if ($item_number4 == 6) {
                            $repas_soirSamedi = $quantity4;
                        } else if ($item_number4 == 7) {
                            $repas_soirDimanche = $quantity4;
                        } else if ($item_number4 == 8) {
                            $totalMarchaux = 1;
                        }
                    }
                    if (isset($item_number5)) {
                        if ($item_number5 == 1) {
                            $id_compet = 1;
                        } else if ($item_number5 == 2) {
                            $id_compet = 2;
                        } else if ($item_number5 == 3) {
                            $id_compet = 3;
                        } else if ($item_number5 == 4) {
                            $petit_dejeune = $quantity4;
                        } else if ($item_number5 == 5) {
                            $dejeune = $quantity5;
                        } else if ($item_number5 == 6) {
                            $repas_soirSamedi = $quantity5;
                        } else if ($item_number5 == 7) {
                            $repas_soirDimanche = $quantity5;
                        } else if ($item_number5 == 8) {
                            $totalMarchaux = 1;
                        }
                    }
                    
                    if(isset($totalMarchaux)&&$totalMarchaux==1){
                        $id_compet = 3;
                        $petit_dejeune = 2;
                        $dejeune = 2;
                        $repas_soirSamedi = 1;
                        $repas_soirDimanche = 1;
                    }

                    file_put_contents('log.txt', print_r($_POST, true));
                    $sql = "INSERT INTO inscrire (fkIdParticipant, fkIdCompetition, paiement, petitDejeune, dejeune, soupeSamedi, soupeDimanche) 
			   VALUES ('$id_user', '$id_compet', '1', '$petit_dejeune', '$dejeune', '$repas_soirSamedi', '$repas_soirDimanche')";

                    file_put_contents('log.txt', print_r($sql, true));
                    $connexion = connexionBdd();
                    $req = $connexion->query($sql)
                            or die("Impossible d'ajouter le participant.");

                    //envoie d'un mail de confirmation


                    $destinataire = $email_user;
                    $sujet = "Confirmation de votre inscription au Marchaux Classic Freeride";

                    $hebergeur = explode("@", $email);
                    file_put_contents('email.txt', print_r($hebergeur[1], true));

                    if ($hebergeur[1] == "hotmail.com" || $hebergeur[1] == "hotmail.fr") {
                        $headers = "From: guillaume.philippon@hotmail.fr \r\n";
                    } else {
                        $headers = "From: webmaster@merkurocrew.fr \r\n";
                    }
                    $headers .= "MIME-Version: 1.0 \n";
                    $headers .= "Content-type: text/html; charset=utf-8 \n";
                    $headers .= "X-Mailer: PHP\n";
                    $headers .= "from: inscription_Freeride@merkurocrew.com\r\nCc:inscription_Freeride@merkurocrew.com\r\nBcc:inscription_Freeride@merkurocrew.com";
                    // Le lien d'activation est composé du login(log) et de la clé(cle)
                    $message = 'Bonjour,

L\'association MerkuroCrew à le plaisir de vous confirmer votre inscription au Marchaux Classic Freeride !
N\'hesitez pas à consulter notre site internet pour plus d\informations concernant le Freeride.

http://www.merkurocrew.fr/

																														
---------------
Ceci est un mail automatique, Merci de ne pas y répondre.';

                    mail($destinataire, $sujet, $message, $entete); // Envoi du mail
                    //
                    //récupération du nombre de place pour chaque compétition 
                    file_put_contents('log.txt', print_r('Test1', true));

                    $sqlSamedi = "SELECT nbPlaceDispo
	                 FROM competition
                         WHERE idCompetition=1";

                    $reqSamedi = $connexion->query($sqlSamedi);
                    $nbPlaceSamedi = $reqSamedi->fetch()
                            or die("Impossible récuperer le nombre de place pour la compétition.");

                    $sqlDimanche = "SELECT nbPlaceDispo
	                 FROM competition
                         WHERE idCompetition=2";

                    $reqDimanche = $connexion->query($sqlDimanche);
                    $nbPlaceDimanche = $reqDimanche->fetch()
                            or die("Impossible récuperer le nombre de place pour la compétition.");

                    $sql2jours = "SELECT nbPlaceDispo
	                 FROM competition
                         WHERE idCompetition=3";

                    $req2jours = $connexion->query($sql2jours);
                    $nbPlace2jours = $req2jours->fetch()
                            or die("Impossible récuperer le nombre de place pour la compétition.");

                    if ($id_compet == 1) {
                        //Décrémentation nb_participant_compétition pour le Samedi
                        $sql = "UPDATE competition
                                SET nbPlaceDispo = nbPlaceDispo-1
                                WHERE idCompetition=1";

                        $req = $connexion->query($sql)
                                or die("Impossible de décrémenter le nombre de place.");


                        //Si il y a moins de personne samedi que pendant les 2 jours
                        if ($nbPlaceSamedi['nbPlaceDispo'] <= $nbPlace2jours['nbPlaceDispo']) {
                            //Décrémentation nb_participant_compétition pour les 2 jours
                            $sql = "UPDATE competition
                                SET nbPlaceDispo = nbPlaceDispo-1
                                WHERE idCompetition=3";

                            $req = $connexion->query($sql)
                                    or die("Impossible de décrémenter le nombre de place.");
                        }
                    } else if ($id_compet == 2) {
                        //Décrémentation nb_participant_compétition pour le Dimanche
                        $sql = "UPDATE competition
                                SET nbPlaceDispo = nbPlaceDispo-1
                                WHERE idCompetition=2";

                        $req = $connexion->query($sql)
                                or die("Impossible de décrémenter le nombre de place.");


                        if ($nbPlaceDimanche['nbPlaceDispo'] <= $nbPlace2jours['nbPlaceDispo']) {
                            //Décrémentation nb_participant_compétition pour les 2 jours
                            $sql = "UPDATE competition
                                SET nbPlaceDispo = nbPlaceDispo-1
                                WHERE idCompetition=3";

                            $req = $connexion->query($sql)
                                    or die("Impossible de décrémenter le nombre de place.");
                        }
                    }
                    if ($id_compet == 3) {
                        //Décrémentation nb_participant_compétition pour le Samedi
                        $sql = "UPDATE competition
                                SET nbPlaceDispo = nbPlaceDispo-1
                                WHERE idCompetition=1";

                        $req = $connexion->query($sql)
                                or die("Impossible de décrémenter le nombre de place.");


                        //Décrémentation nb_participant_compétition pour le Dimanche
                        $sql = "UPDATE competition
                                SET nbPlaceDispo = nbPlaceDispo-1
                                WHERE idCompetition=2";

                        $req = $connexion->query($sql)
                                or die("Impossible de décrémenter le nombre de place.");


                        //Décrémentation nb_participant_compétition pour les 2 jours
                        $sql = "UPDATE competition
                                SET nbPlaceDispo = nbPlaceDispo-1
                                WHERE idCompetition=3";

                        $req = $connexion->query($sql)
                                or die("Impossible de décrémenter le nombre de place.");
                    }
                    file_put_contents('log.txt', print_r($sql, true));
                }
            } else {
                echo "Statut de paiement: Echec";
            }
        } else if (strcmp($res, "INVALID") == 0) {
            echo "transaction invalide";
        } else {
            echo "<br>erreur";
        }
    }
    fclose($fp);
}
?>
						

